home *** CD-ROM | disk | FTP | other *** search
/ Games of Daze / Infomagic - Games of Daze (Summer 1995) (Disc 1 of 2).iso / x2ftp / msdos / libs / knowhow4 / ljfonts.h < prev    next >
C/C++ Source or Header  |  1994-10-10  |  1KB  |  50 lines

  1. #ifndef __LJFONTS
  2. #define __LJFONTS
  3.  
  4. #ifndef __GEOM
  5. #include "graphpp.h"
  6. #endif
  7. #include "simple.h"
  8.  
  9.  class far ljchardsc; // class is used only through pointers
  10.  class ljfontdsc;
  11.  
  12.  
  13.  
  14. class ljfont
  15.  { char far * data;
  16.    ljchardsc near * letters[256]; //offsets  to individual letters' definition
  17.    ljfontdsc * descriptor;
  18.    int ok;
  19.  
  20. friend void drawscaledstr (const ljfont& font,uchar * s,int xscale,int yscale,int write_mode, int dir);
  21. friend void drawscaledchar(const ljfont& font,uchar c,int xscale,int yscale,int threshold,int write_mode, int dir);
  22. friend void drawstr(const ljfont& font,char * s,int transparent);
  23. friend void drawchar(const ljfont& font,char c,int transparent);
  24.  
  25.  
  26.  
  27.    public:
  28.     ljchardsc far * operator[](uchar n) const;
  29.     ljfont(const char * name);
  30.     int isvalid() const {return ok;}
  31.     rect textsize( const char * s) const ;
  32.     rect scaledtextsize(const char * s,int xscale,int yscale) const;
  33.     ~ljfont();
  34.  
  35. };
  36.  
  37.  void drawscaledstr (const ljfont& font,uchar * s,int xscale,int yscale,int write_mode=0, int dir=0);
  38.  void drawscaledchar(const ljfont& font,uchar c,int xscale,int yscale,int threshold,int write_mode=0, int dir=0);
  39.  void drawstr(const ljfont& font,char * s,int transparent);
  40.  void drawchar(const ljfont& font,char c,int transparent);
  41.  
  42. /*
  43.      *----------------------------------------------------------*
  44. */
  45.  
  46. #endif
  47.  
  48.  
  49.  
  50.